// RAP [rh] quick access disabled
///*******************************************************************************
// * Copyright (c) 2007 IBM Corporation and others.
// * All rights reserved. This program and the accompanying materials
// * are made available under the terms of the Eclipse Public License v1.0
// * which accompanies this distribution, and is available at
// * http://www.eclipse.org/legal/epl-v10.html
// *
// * Contributors:
// * IBM Corporation - initial API and implementation
// ******************************************************************************/
//
//package org.eclipse.ui.internal.quickaccess;
//
//import java.util.ArrayList;
//import java.util.List;
//
///**
// * Utility methods for camel case style matching.
// *
// * @since 3.3
// *
// */
//public class CamelUtil {
//
// /**
// * Returns a lowercase string consisting of all initials of the words in the
// * given String. Words are separated by whitespace and other special
// * characters, or by uppercase letters in a word like CamelCase.
// *
// * @param s
// * the string
// * @return a lowercase string containing the first character of every wordin
// * the given string.
// */
// public static String getCamelCase(String s) {
// StringBuffer result = new StringBuffer();
// if (s.length() > 0) {
// int index = 0;
// while (index != -1) {
// result.append(s.charAt(index));
// index = getNextCamelIndex(s, index + 1);
// }
// }
// return result.toString().toLowerCase();
// }
//
// /**
// * Return an array with start/end indices for the characters used for camel
// * case matching, ignoring the first (start) many camel case characters.
// * For example, getCamelCaseIndices("some CamelCase", 1, 2) will return
// * {{5,5},{10,10}}.
// *
// * @param s the source string
// * @param start how many characters of getCamelCase(s) should be ignored
// * @param length for how many characters should indices be returned
// * @return an array of length start
// */
// public static int[][] getCamelCaseIndices(String s, int start, int length) {
// List result = new ArrayList();
// int index = 0;
// while (start > 0) {
// index = getNextCamelIndex(s, index + 1);
// start--;
// }
// while (length > 0) {
// result.add(new int[] { index, index });
// index = getNextCamelIndex(s, index + 1);
// length--;
// }
// return (int[][]) result.toArray(new int[result.size()][]);
// }
//
// /**
// * Returns the next index to be used for camel case matching.
// *
// * @param s the string
// * @param index the index
// * @return the next index, or -1 if not found
// */
// public static int getNextCamelIndex(String s, int index) {
// char c;
// while (index < s.length()
// && !(isSeparatorForCamelCase(c = s.charAt(index)))
// && Character.isLowerCase(c)) {
// index++;
// }
// while (index < s.length() && isSeparatorForCamelCase(c = s.charAt(index))) {
// index++;
// }
// if (index >= s.length()) {
// index = -1;
// }
// return index;
// }
//
// /**
// * Returns true if the given character is to be considered a separator
// * for camel case matching purposes.
// *
// * @param c the character
// * @return true if the character is a separator
// */
// public static boolean isSeparatorForCamelCase(char c) {
// return !Character.isLetterOrDigit(c);
// }
//
//}